package controllers;

import java.util.Properties;

import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
 /**
  * this class sends mail to an employee in SGI, and update relevant data
  */
public class SendMail {
 
	final String username = "sgi2014system@gmail.com";
	final String password = "sgi20142014";
	String address;
	String msgToSend;
	public SendMail(String mailTo,String msg){

		this.address=mailTo;
		this.msgToSend=msg;
		
		Properties props = new Properties();
		props.put("mail.smtp.auth", "true");
		props.put("mail.smtp.starttls.enable", "true");
		props.put("mail.smtp.host", "smtp.gmail.com");
		props.put("mail.smtp.port", "587");
 
		Session session = Session.getInstance(props,
		  new javax.mail.Authenticator() {
			protected PasswordAuthentication getPasswordAuthentication() {
				return new PasswordAuthentication(username, password);
			}
		  });
 
		try {
 
			Message message = new MimeMessage(session);
			message.setFrom(new InternetAddress("sgi2014system@gmail.com"));
			message.setRecipients(Message.RecipientType.TO,
				InternetAddress.parse(address));
			message.setSubject("New Notification");
			message.setText(msgToSend
				+ "\n\n No spam to my email, please!");
 
			Transport.send(message);
 
			System.out.println("Done!!!");
 
		} catch (MessagingException e) {
			throw new RuntimeException(e);
		}
	}
}
